package cn.cecgw.mapper;

import cn.cecgw.entity.User;
import org.apache.ibatis.annotations.*;

import java.util.List;
import java.util.Map;

/**
 * @version 1.0
 * @description:UserMapper
 * @description: User持久
 * @author: 赵新
 * @date: 2021/5/7 10:17
 */
public interface UserMapper {

    /**
     * 获取所有的用户信息
     * @return
     */
    @Select("select *from user")
    List<User> getUserList();

    /**
     * 根据名称模糊查询所有符合条件的信息
     * @param name
     * @return
     */
    @Select("select * from user where name like '%${name}%' ")
    List<User> getUserListLike(@Param("name") String name);
    /**
     * 根据名称模糊查询所有符合条件的信息2
     * @param name
     * @return
     */
    @Select("select * from user where name like #{name}")
    List<User> getUserListLike2(@Param("name") String name);

    /**
     * 根据ID获取用户信息
     * @param id
     * @return
     */
    @Select("select * from user where id= #{pid}")
    User getUserById(@Param("pid") int id);

    /**
     * 添加一个用户信息
     * @param user
     * @return
     */
    @Insert(" insert into user(`id`,`name`,`password`)values (#{id},#{name},#{password})")
    int addUser(User user);
    /**
     * 添加一个用户信息
     * @param map
     * @return
     */
    @Insert(" insert into user(`id`,`name`,`password`)values (#{id},#{name},#{pwd})")
    int addUser2(Map<String,Object> map);

    /**
     * 更新用户信息
     * @param user
     * @return
     */
    @Update("update user set `name` =#{name} ,`password`= #{password} where `id` = #{id}")
    int updateUser(User user);

    /**
     * 删除用户信息
     * @param id
     * @return
     */
    @Delete("delete from user where `id`= #{id}")
    int deleteUser(@Param("id") int id);


}
